$(function(){
	$("#version").change(function(){
		var first=$("#javaVersion").children('option:first');
		if($(this).val().substring(0,1)=='2'){			
			first.hide();
			first.next().attr({selected :true});
		}else{
			first.show();
		}		
	});
	$("#javaVersion").change(function(){
		var first=$("#version").children('option:first');
		if($(this).val()=='1.7'){
			first.show().attr({selected :true});
			first.next().hide();
			first.next().next().hide();
		}else{
			first.show();
			first.next().show();
			first.next().next().show();
		}
		
	});
	$("#openDataSource").change(function(){
		if($(this).is(":checked")){
			$(".datasource").show();
			$("#mybatis-plus").show();		
			$("#db_persistence").show();
			$("#jdbc").show();
		}else{
			$(".datasource").hide();
			$("#db_persistence").hide();		
			$("#mybatis-plus").hide();
			$(".mybatis-plus").hide();
			$("#jdbc").hide();
			$("#mybatis-plus").children(':checkbox').each(function(){
				if($(this).is(':checked')){
					$(this).prop('checked',false);
				}
			});
			
			$("#jdbc").children(':checkbox').each(function(){
				if($(this).is(':checked')){
					$(this).prop('checked',false);
				}
			});
		}
	});
	$("#openView").change(function(){
		if($(this).is(":checked")){
			$(".view").show();
		}else{
			$(".view").hide();
		}
	});
	$("#openLogback").change(function(){
		if($(this).is(":checked")){
			$(".logback").show();
		}else{
			$(".logback").hide();
		}
	});
	/*$("#poolType").change(function(){
		var first=$("#type").children('option:first');
		if($(this).val()=='HikariCP'){
			first.show().next().attr({selected :true});
			first.hide();
			if($("#type").val()=='mysql'){
				$("#url").val("jdbc:mysql://127.0.0.1:3306/DBNAME");
			}else if($("#type").val()=='sqlserver'){
				$("#url").val("jdbc:sqlserver://127.0.0.1:1433;databaseName=DBNAME");
				
			}
		}else{
			first.show();
			first.next().show();
		}
		
	});*/
	$("#type").change(function(){
		//var first=$("#poolType").children('option:first');
		if($(this).val()=='oracle'){
//			first.show().attr({selected :true});
//			first.next().next().hide();			
			$("#url").val("jdbc:oracle:thin:@127.0.0.1:1521:ORCL");
		}else{
//			first.show();
//			first.next().next().show();
			if($(this).val()=='mysql'){
				$("#url").val("jdbc:mysql://127.0.0.1:3306/DBNAME");
			}else if($(this).val()=='sqlserver'){
				$("#url").val("jdbc:sqlserver://127.0.0.1:1433;databaseName=DBNAME");
				
			}
		}
		$("#username").val('');
		$("#password").val('');
		
	});
	$("#mybatis-plus").children().change(function(){
		if($(this).is(":checked")){
			$(".mybatis-plus").show();
			var type=$("#type").val();
			var url=$.trim($("#url").val());
			var username=$.trim($("#username").val());
			$('ul.tag-editor').remove();
			var password=$.trim($("#password").val());
			if(url!='' && username !='' && password!=''){
				
				getTableNames(type, url, username, password);				
			}else{
				$('#tables').tagEditor({
				    delimiter: ', ',
				    placeholder: 'tables'});
			}
			
			$('#tablePrefixs').tagEditor({
			    delimiter: ', ',
			    placeholder: 'table prefixs'});
		}else{
			$(".mybatis-plus").hide();
		}
	});
	$("#mybatis-plus").children().change(function(){
		if($(this).is(":checked")){
			$(".mybatis-plus").show();			
		}else{
			$(".mybatis-plus").hide();
		}
	});
	$("#redis").children().change(function(){
		if($(this).is(":checked")){
			$(".redis").show();
		}else{
			$(".redis").hide();
		}
	});
	$("#mongoDB").children().change(function(){
		if($(this).is(":checked")){
			$(".mongoDB").show();
		}else{
			$(".mongoDB").hide();
		}
	});
	$("#mail").children().change(function(){
		if($(this).is(":checked")){
			$(".mail").show();
		}else{
			$(".mail").hide();
		}
	});
	$("#rabbitmq").children().change(function(){
		if($(this).is(":checked")){
			$(".rabbitmq").show();
		}else{
			$(".rabbitmq").hide();
		}
	});
	$("#activemq").children().change(function(){
		if($(this).is(":checked")){
			$(".activemq").show();
		}else{
			$(".activemq").hide();
		}
	});
	$("#kafka").children().change(function(){
		if($(this).is(":checked")){
			$(".kafka").show();
		}else{
			$(".kafka").hide();
		}
	});
	$("#solr").children().change(function(){
		if($(this).is(":checked")){
			$(".solr").show();
		}else{
			$(".solr").hide();
		}
	});
	$("#elasticsearch").children().change(function(){
		if($(this).is(":checked")){
			$(".elasticsearch").show();
		}else{
			$(".elasticsearch").hide();
		}
	});
	
	
});
function tips(id,text){
	layer.tips(text, id, {
		  tips: [3, '#3595CC'],
		  time: 3000
		});
	$(id).focus();
}
function getTableNames(type,url,username,password) {
	layer.msg(msg, {
	  icon: 16
	  ,shade: 0.01
	  ,time :0
	});
	$.post(path + '/get_table_names.do',
			{type : type,url : url,username : username,password : password},
			function(data){
				layer.closeAll();
				$('#tables').tagEditor({
					 initialTags: data,
				    delimiter: ', ',
				    placeholder: 'tables'});
			});	
}